/**
 * \file   directiva.cpp
 * \author Fabian Jesus Machado
 * \date   Septiembre de 2011
 * 
 *  Este archivo es parte del proyecto NPASM, un ensamblador para
 * microcontroladores PIC con sintaxis Intel, desarrollado inicialmente
 * por Fabian Machado (fabianjsm@gmail.com, twitter@fabianjsm).
 *  El codigo fuente esta diponible en el repositorio SVN de Google:
 *      http://npasm.googlecode.com/svn/trunk.
 * 
 */
#include <iostream>
#include <vector>
#ifndef	DIRECTIVA_H
#define	DIRECTIVA_H
#define LOG_NUM 0x01
#define LOG_STR 0x02
#define LOG_FIN 0x03

struct include {
	include(FILE *, size_t, size_t, std::string);
	FILE *yyin;
	size_t seek;
	size_t l;
	std::string nombre;
};

extern std::vector<include, std::allocator<include> > pila_include;

void drtv_log(int, unsigned long);
void drtv_define(simbolo *sbl, unsigned long);
void drtv_equ(simbolo *slb, unsigned long);
void drtv_include(unsigned long);
int restaurar_include();

#endif	/* DIRECTIVA_H */
